<?php
/*
    Copyright (C) 2008 - 2010 Inanta Martsanto
    
    This file is part of Koma.

    Koma is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.

    Koma is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with Koma.  If not, see <http://www.gnu.org/licenses/>.
    
    Inanta Martsanto (inanta@inationsoft.com)
*/

define('KOMA_COMPARE_EQUALS', 0);
define('KOMA_COMPARE_GREATER_THAN', 1);
define('KOMA_COMPARE_LESS_THAN', 2);
define('KOMA_COMPARE_NOT_EQUALS', 3);

class KomaCompareValidator extends KomaValidator
{	
	function __construct($id, $operator = KOMA_COMPARE_EQUALS, $message = 'Not match')
	{
		switch($operator)
		{
			case KOMA_COMPARE_EQUALS:
				parent::__construct('equalTo', sprintf($message, $length)); break;
			case KOMA_COMPARE_GREATER_THAN:
				parent::__construct('greaterThan', sprintf($message, $length)); break;
			case KOMA_COMPARE_LESS_THAN:
				parent::__construct('lessThan', sprintf($message, $length)); break;
			case KOMA_COMPARE_NOT_EQUALS:
				parent::__construct('notEqualTo', sprintf($message, $length)); break;
		}
		
		$this->Param = '#'.$id;
	}
}

?>